def runExample(name: String)(f: => Unit) =
  println(Console.MAGENTA + s"$name example: " + Console.RESET)
  f
  println()

@main def main() =
  runExample("Trait Params")(TraitParams.test)
  runExample("Enum Types")(EnumTypes.test)
  runExample("Context Functions")(ContextFunctions.test)
  runExample("Given Instances")(GivenInstances.test)
  runExample("Conversion")(Conversion.test)
  runExample("Union Types")(UnionTypes.test)
  runExample("Type Lambda")(TypeLambdas.test)
  runExample("Multiversal Equality")(MultiversalEquality.test)
  runExample("Parameter Untupling")(ParameterUntupling.test)
  runExample("Structural Types")(StructuralTypes.test)